1. Field of the Invention
The present invention concerns construction of a color lookup table (“LUT”) that implements a transformation from device colorant values in a source device color space, to device colorant values in a destination device colorant space.
2. Description of the Related Art
In color management, it is common to composite a series of color transformations into a single composite color look-up table (“LUT”). Typically, such a LUT combines the following transform pipeline into a single LUT: (1) a source device modeling step that converts source device control values into device-independent color values; (2) a color appearance modeling step that converts the device-independent color values into device and viewing condition independent color appearance values; (3) a gamut mapping step that converts color appearance values to fit within the gamut of the destination device; (4) an inverse color appearance modeling step that converts color appearance values into device-independent tristimulus values, relative to the destination viewing conditions; and (5) a destination device modeling step that converts the device-independent tristimulus values into destination device control values. Note that some of these steps, such as device modeling and color appearance modeling, can be combined within the scope of this invention. Also note that additional processing steps can be added to this pipeline without loss of generality.
Similarly, the International Color Consortium (“ICC”) defines a transform-based model where there basically are two elements: a source color transform that transforms source device colors to a profile connection space (“PCS”), and a destination color transform that transforms PCS colors to destination device colors. In this case, a composite LUT is generally constructed by compositing two look-up tables that respectively represent the source and destination color transforms.
The size of the LUT is determined by several factors, namely, the number of color channels in the source device, the number of steps in the table for each source color channel, and the number of color channels in the output device. The formula for determining the table size is:Size=(Number of steps per channel in the source device)(Number of channels in source device)×(number of channels in output device)
As can be seen, the size of the table grows exponentially depending upon the number of channels in the source device.
A problem occurs in construction of such a LUT, particularly for “just in time” use for measurement only profiles (“MOPs”), since as the size of the LUT grows, the time taken to construct it also grows. Many source devices support three color channels (Red, Green, Blue, for example). However, if a source device supports four channels (CMYK, for example), the size of the table, and the time required to construct it, grows by a factor of the number of steps. In a measurement-based color management system, where transforms are constructed from MOPs ‘on the fly’, this time may well be unacceptable.